const seq = require('../db/seq')
const { DataTypes } = require('sequelize')

const User = seq.define("chjy_user", {
    user_id: {
        type: DataTypes.STRING,
        allowNull: false,
        unique: true,
        primaryKey: true,
        comment: '用户id'
    },
    username: {
        type: DataTypes.STRING,
        allowNull: false,
        unique: true,
        comment: '用户名'
    },
    password: {
        type: DataTypes.STRING,
        allowNull: true,
        comment: '密码'
    },
    nick_name: {
        type: DataTypes.STRING,
        allowNull: false,
        comment: '昵称'
    },
    brithday: {
        type: DataTypes.DATEONLY,
        allowNull: true,
        comment: '生日'
    },
    gender: {
        type: DataTypes.BOOLEAN,
        allowNull: false,
        defaultValue: 0,
        comment: '性别, 0: 女; 1: 男'
    },
    is_admin: {
        type: DataTypes.BOOLEAN,
        allowNull: false,
        defaultValue: 0,
        comment: '是否为管理员, 0: 不是管理员(默认); 1: 是管理员',
    },
    is_delete: {
        type: DataTypes.BOOLEAN,
        allowNull: false,
        defaultValue: 0,
        comment: '是否删除, 0: 未删除(默认); 1: 已删除',
    }
}, {
    timestamps: true, // 开启时间戳
    createdAt: 'created_time', // 重命名 createdAt 为 created_time
    updatedAt: 'updated_time', // 重命名 updatedAt 为 updWEated_time
    tableName: 'chjy_user', // 定义表名
    freezeTableName: true // 禁止修改表名
})

// User.sync({ force: true })

module.exports = User